﻿using System.ComponentModel;
using System.IO;
using Zeta.Common.Xml;
using Zeta.XmlEngine;

namespace IncubusCC.Settings
{
    [XmlElement("WizardSettings")]
    public class WizardSettings : XmlSettings
    {
        public WizardSettings() :
            base(Path.Combine(Path.Combine(SettingsDirectory, "IncubusCC"), "WizardSettings.xml"))
        {
        }

        [XmlElement("DiamondSkinHp")]
        [DisplayName("Diamond Skin Hp")]
        [Category("Defensive")]
        [Description("Hp percent to use Diamond Skin")]
        [DefaultValue(0.5)]
        public double DiamondSkinHp { get; set; }

        [XmlElement("SlowTimeHp")]
        [DisplayName("Slow Time Hp")]
        [Category("Defensive")]
        [Description("Hp percent to use Slow Time")]
        [DefaultValue(0.5)]
        public double SlowTimeHp { get; set; }

        [XmlElement("MirrorImageHp")]
        [DisplayName("Mirror Image Hp")]
        [Category("Mastery")]
        [Description("Hp percent to use Mirror Image")]
        [DefaultValue(0.5)]
        public double MirrorImageHp { get; set; }

        [XmlElement("ArchonAoECount")]
        [DisplayName("Archon AoE Count")]
        [Category("Mastery")]
        [Description("Number of Mobs to use Archon on, will auto use on Elites")]
        [DefaultValue(5)]
        public int ArchonAoECount { get; set; }

        [XmlElement("Teleport")]
        [DefaultValue(true)]
        public bool Teleport { get; set; }

        [XmlElement("TeleportDistance")]
        [DefaultValue(35f)]
        public float TeleportDistance { get; set; }
        
    }
}
